//
//  ViewController.swift
//  RealmSwiftDemo
//
//  Created by 李煜 on 2024/5/21.
//

import RealmSwift
import UIKit

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        // 使用默认的数据库
        let realm = try! Realm()
        // 查询所有的消费记录
        let items = realm.objects(ConsumeItem.self)
        // 已经有记录的话就不插入了
        if items.count > 0 {
            return
        }

        // 创建两个消费类型
        let type1 = ConsumeType()
        type1.name = "购物"
        let type2 = ConsumeType()
        type2.name = "娱乐"

        // 创建三个消费记录
        let item1 = ConsumeItem(value: ["买一台电脑", 5999.00, Date(), type1]) // 可使用数组创建

        let item2 = ConsumeItem()
        item2.name = "看一场电影"
        item2.cost = 30.00
        item2.date = Date(timeIntervalSinceNow: -36000)
        item2.type = type2

        let item3 = ConsumeItem()
        item3.name = "买一包泡面"
        item3.cost = 2.50
        item3.date = Date(timeIntervalSinceNow: -72000)
        item3.type = type1

        // 数据持久化操作（类型记录也会自动添加的）
        do {
            try realm.write({
                realm.add(item1)
                realm.add(item2)
                realm.add(item3)
            })

        } catch {
            print(error)
        }

        // 打印出数据库地址
        print(realm.configuration.fileURL as Any)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}
